This invention relates to network management, and in particular to the support of a plurality of network management agents.
In order to manage a network, it is useful to be able to collect statistics about messaging traffic, provide assistance with load balancing, get early warning of potential problems, look out for attempted security violations, carry out trouble shooting operations and remotely configure a messaging application.
Network management systems have been proposed for addressing these matters. A typical structure which has been adopted is to provide a management application operating on a management workstation which communicates with individual managed systems via an information processing network. The managed systems are provided with agents which handle requests for information from the management application and send out alarms when necessary.
The management application, or manager, typically includes various tools for determining a view of messaging applications running on the managed machines, statistical tools for providing statistical information regarding the operation of the network, various presentational tools for displaying such statistical information and mechanisms for enabling the configuration of messaging applications. The communication between the management application or console and the managed system will normally be via the network system concerned, for example via the Internet. For a network management system, operating over the Internet, a so-called `Simple Network Management Protocol` (SNMP) has been proposed (RFC 1157). SNMP is a standard protocol designed to offer simple management services for TCP/IP (Transmission Control Protocol/Internet Protocol) networks. In the appropriate terminology, when an agent and a management application communicate using SNMP, they form an SNMP community identified by a community name. The messages that the agent and the management application exchange always contain this community name as a simple authentication method.
An SNMP operation can be one of the following: GET, GET-NEXT, or TRAP. A management application uses the GET and GET-NEXT operations to send a request to an SNMP agent (GET-REQUEST or GET-NEXT-REQUEST). SNMP agents use the GET-RESPONSE operation to send a response to a request from the management application. SNMP agents also use the TRAP operation to send unsolicited event reports, for example for reporting faults or errors.
FIG. 1 of the accompanying drawings is a schematic representation of such a management structure with a management console 24 communicating with a managed system 10 via an Internet Protocol network 22. At the managed system 10, an SNMP agent 14 is connected to the Internet Protocol network via a UDP/IP (User Datagram Protocol/Internet Protocol) interface 12. In TCP/IP, UDP is a packet-level protocol built directly on the Internet Protocol layer. UDP is used for application-to-application programs between TCP/IP host systems.
Internet standards groups have also defined the so-called Management Information Base (MIB). This forms a global information model for network management. The information model is described in FRC 1155: "Structure and Identification for TCP/IP-Based Internets. This model contains information objects that are organised in a tree structure to allow for future extensions. FIG. 2 of the accompanying drawings is a schematic representation of part of the global information model. An example of a standard MIB is defined in RFC 1213: "Management Information Base for network Management of TCP/IP-Based Internets: MIB II". Further details on SNMP and MIBs can be also be found in "Data and Computer Communications" (4th Edition) by William Stallings, Maxwell MacMillan International, 1994 ISBN 02-415441-5, pages 701-724)
Sub-trees of the global MIB tree, which address a particular area of network management, are also called MIBs. For example, there is a Mail Monitoring MIB ((RFC1566) for message transfer agents.
Each object in the global MIB has a meaningful English-language object name and a Unique Object Identifier (OID). The English language object name reflects the semantic contents of the object, whereas the OID is a sequence of numbers that is obtained by combining the OIDs of all objects in the `path` between the root and a particular object. The OID indicates the exact location of the corresponding object in the global MIB. For example, the application table object shown at the bottom left of FIG. 2 has the object name `applTable` and the OID 1.3.6.1.2.1.27.1.
Standard information objects designed to manage and monitor systems and applications are included under the management sub-tree `mgmt(2)`. The `application (27)` sub-tree and the tables below, `applTable` and `assocTable`, are defined in the Network Services Monitoring MIB. Information objects, or variables, that are to be found in these tables, are not shown in FIG. 2.
An SNMP agent can support an entire sub-tree of the global MIB, or specific tables or individual objects. An SNMP agent operates such that it supports particular objects within the sub-tree and, on receipt of a request from a management application, will return the values of the MIB objects which it supports. For example, a management application might query a server SNMP agent for information such as application status, number of associations between applications, and number of volume of messages transmitted or stored.
Thus, for example, a server agent might monitor a messaging server and an Internet adaptor and support extensions for handling messages, storing data and traps. The MIBs will describe the type of information an SNMP agent can collect.
The SNMP standard states that an SNMP agent must wait on the so-called UDP port 161 for incoming requests. This effectively means that a managed system can only have one agent. Although as indicated above, an agent could manage a complete MIB sub-tree, in practice, SNMP agents are typically configured to support specific tables or individual objects or groups of objects from within the MIB. If, therefore, one wishes to use standard SNMP agents, this has had the effect of restricting the level of management which is possible on any given managed system.
It would be possible to create new super agents which are capable of managing all the tasks required at a managed system, but this would be a very expensive solution. Also, it has been proposed to provide a multiplexing mechanism connected to UDP port 161, but the proposed solutions have all required modifications to standard SNMP agents in order to achieve operability. These solutions have not found acceptance.
Accordingly, there is a need for a solution to the problems described above which is acceptable to the industry.